#ifndef GPIO_SYSFS_H
#define GPIO_SYSFS_H
#include <stdio.h>

typedef struct {
    int pin;
    char value_path[64];
    char direction_path[64];
    FILE *value_fp;  // 保持打开以避免频繁 fopen/fclose
} gpio_t;

// 初始化并导出 GPIO
int gpio_open(gpio_t *gpio, int pin, const char *direction); // "in" or "out"

// 设置输出电平
int gpio_write(gpio_t *gpio, int value);

// 读取输入电平
int gpio_read(gpio_t *gpio);

// 关闭并 unexport
int gpio_close(gpio_t *gpio);

#endif // GPIO_SYSFS_H
